package com.les.ufcg.gerenciador.elementos;

import android.R.id;
import android.os.Bundle;
import java.util.ArrayList;
import java.util.List;
import com.les.ufcg.gerenciador.R;
import com.les.ufcg.gerenciador.db.ComandosSQL;
import com.les.ufcg.gerenciador.db.DBAdapter;


import android.app.AlertDialog;
import android.app.ListActivity;
import android.content.DialogInterface;
import android.content.Intent;
import android.database.Cursor;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;

public class RemoverTodosEmprestimosCedidosActivity extends ListActivity{

	String[] emprestimos;
	int[] ids;
    private static List<Emprestimo> lista_de_emprestimos;
	public void onCreate(Bundle b) {
		super.onCreate(b);
		//setContentView(R.layout.buscar_layout);
               
		emprestimos = loadLembretesDb();
        setListAdapter(new ArrayAdapter<String>(this, R.layout.list_emprestimos, emprestimos));

        ListView lv = getListView();
        lv.setTextFilterEnabled(true);

        
        lv.setOnItemClickListener(new OnItemClickListener() {
               public void onItemClick(AdapterView<?> parent, View view,
                                       int position, long id) {
                                int value = Integer.parseInt(((TextView) view).getText().toString().split("|")[1]);
                                System.out.println(value);
                                String emprestimo = ((TextView) view).getText().toString();
                                callDialog(value, emprestimo);
                         }

                        private void callDialog(final int value, final String emprestimo) {
                                AlertDialog alertDialog = new AlertDialog.Builder(RemoverTodosEmprestimosCedidosActivity.this).create();
                                alertDialog.setTitle("Remover todos os Emprestimos");
                                alertDialog.setIcon(R.drawable.remove);
                                alertDialog.setMessage("Voce deseja remover todos os emprestimos ?");
                               alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
                 				      
                            	   public void onClick(DialogInterface dialog, int which) {
                						DBAdapter.getContext().open();
                						for (int i = 0; i < ids.length; i++) {
                							DBAdapter.getContext().removerEmprestimo(i);
										}
                						DBAdapter.getContext().close();
                						finish();
                						startActivity(new Intent(getApplication(), RemoverTodosEmprestimosCedidosActivity.class));				       
                				    }
                 				});
                 				alertDialog.show();
                                 
                                 
                        }
                });
        }
        
        private String[] loadLembretesDb() {    
                DBAdapter db = DBAdapter.getContext();
                this.lista_de_emprestimos = new ArrayList<Emprestimo>();
                
                Emprestimo l = null;
                Cursor c = null;
                
                db.open();
                c = db.listarTodosEmprestimos();
                
                while (!c.isAfterLast()) {
                        l = new Emprestimo(c.getInt(c.getColumnIndex(ComandosSQL.KEY_ROWID)),
								c.getString(c.getColumnIndex(ComandosSQL.KEY_DE_QUEM)),
								c.getString(c.getColumnIndex(ComandosSQL.KEY_PARA_QUEM)), 
								c.getString(c.getColumnIndex(ComandosSQL.KEY_DESCRICAO)),
								c.getString(c.getColumnIndex(ComandosSQL.KEY_CATEGORIA)),
								null,null,false,null
								);
                        
                        c.moveToNext();
                       
                        
                        if(l.getDeQuem().equals("Eu"))
                        	this.lista_de_emprestimos.add(l);
                       l = null;
                 }
                 c.close();
                 db.close();
                 
                String[] s = new String[this.lista_de_emprestimos.size()];
                ids = new int [this.lista_de_emprestimos.size()];
                for (int i = 0; i < s.length; i++) {
                        s[i] = this.lista_de_emprestimos.get(i).toString();
                        ids[i] = this.lista_de_emprestimos.get(i).get_id();
                }
                return s;
        }

}
